package request

import "server/model/common/request"

type CustomerBug struct {
	ID              uint   `json:"id"`                                  // 主键ID
	CustomerId      uint   `json:"customerID" validate:"required"`      // 客户名称
	EnvVersion      uint   `json:"envVersion" validate:"required"`      //环境版本
	CVE             string `json:"cve" validate:"required"`             // cve编号
	AttachmentID    uint   `json:"attachmentID"`                        // 附件
	BugLevel        uint8  `json:"bugLevel" validate:"required"`        // Bug等级
	Status          uint8  `json:"status" validate:"required"`          //状态
	APP             uint8  `json:"app"`                                 //影响应用
	DiscoverVersion string `json:"discoverVersion" validate:"required"` //发现版本
	Feedback        uint   `json:"feedback" validate:"required"`        //反馈者
	FixVersion      string `json:"fixVersion"`                          //修复版本
	Fixer           uint   `json:"fixer"`                               //修复者
	BugDesc         string `json:"bugDesc"`                             //bug描述
	VerifyInfo      string `json:"verifyInfo" validate:"required"`      //验证信息
	FixSuggest      string `json:"fixSuggest" validate:"required"`      //修复建议
	Comment         string `json:"comment"`                             //备注
	Tags            string `json:"tags"`                                //  标签
}

type SwitchBugStatus struct {
	ID         uint   `json:"id"`                         // 主键ID
	IDS        string `json:"ids"`                        // 批量切换状态时会用
	FixVersion string `json:"version"`                    //修复版本
	Fixer      uint   `json:"fixer"`                      //修复者
	Status     uint8  `json:"status" validate:"required"` //状态
}

type BugSearchParams struct {
	request.PageInfo
	Name     string `json:"name"`
	CVE      string `json:"cve"`
	Tag      string `json:"tag"`
	Status   uint8  `json:"status"`
	APP      uint8  `json:"app"`
	BugLevel uint8  `json:"bugLevel"`
}

type BatchAddBug struct {
	CustomerId   uint   `json:"customerID" validate:"required"` // 客户名称
	EnvVersion   uint   `json:"envVersion" validate:"required"` //环境版本
	AttachmentID uint   `json:"attachmentID"`                   // 附件
	Feedback     uint   `json:"feedback"  validate:"required"`  //反馈者
	Comment      string `json:"comment"`                        //备注
	Tags         string `json:"tags"`                           //  标签
}

type BatchDeleteBug struct {
	IDS string `json:"ids" validate:"required"`
}
